---
title: clsAppealManager
summary: API reference for clsAppealManager.
status: draft
owner: SAIF Claims BOF team
last_reviewed: 2026-08-21
library: SAIF.Application.Claim.Legal
reference_type: embedded
---

# clsAppealManager

`clsAppealManager` drives appeal case management: creating and deleting appeals, scheduling oral arguments and extensions, and running pre/post-save file-location and calendar processing when an appeal's state changes. It also exposes an AJAX endpoint for brief-date updates. It reads the current user's default printer (`inSecurityPrincipal.GetDefaultPrinter()`) at construction time to support Appworx print submissions from appeal-related workflows. It inherits `LegalManagerBase` (this library) → `ClaimAppManager` (`SAIF.Application.Claim`).

## Purpose
- Create and delete appeal records tied to the current legal case.
- Schedule oral arguments and manage extension requests for an appeal.
- Run pre/post-save file-location and calendar processing so appeal state changes are reflected in the case's file location and hearing calendar.
- Serve an AJAX endpoint for updating brief-submission dates from the appeal screen.

## Context
- Namespace: `SAIF.Application.Claim.Legal`
- Assembly/package: `SAIF.Application.Claim.Legal.dll` (embedded library, referenced by the `Legal` web front end)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `New(inDatabase, inSecurityPrincipal)` | `Public Sub New(inDatabase As String, inSecurityPrincipal As clsSecurityPrincipal)` | Constructs the manager for the given database context and authenticated principal, calling into `LegalManagerBase.New` and capturing the principal's default printer for later Appworx submissions. |
| `Appeals` | `Public ReadOnly Property Appeals As clsAppealCollection`* | Exposes the appeal collection tied to the current legal case. |
| `CreateAppeal()` | `Public Sub CreateAppeal()`* | Creates a new appeal record on the current case for subsequent scheduling and save. |
| `DeleteAppeal()` | `Public Sub DeleteAppeal()`* | Removes the selected appeal record from `Appeals`. |
| `ScheduleOralArgument()` | `Public Sub ScheduleOralArgument()`* | Schedules an oral argument date for the selected appeal. |
| `ProcessAjaxRequest()` | `Public Sub ProcessAjaxRequest()`* | Reads `HttpContext.Current.Request` parameters directly to update a brief-submission date and returns a JSON response. |
| `PreSaveProcessing()` | `Public Sub PreSaveProcessing()`* | Runs file-location/calendar adjustments before the appeal save dispatch executes, per this library's pre/post-save hook pattern. |
| `PostSaveProcessing()` | `Public Sub PostSaveProcessing()`* | Runs file-location/calendar adjustments after the appeal save dispatch completes. |
| `Save()` | `Public Overrides Function Save() As Boolean`* | Persists pending appeal inserts/deletes/edits via the inherited `clsBusinessBase.Save()` dispatch path, invoking `PreSaveProcessing`/`PostSaveProcessing` around it. |

## Behavioral notes
- The pre/post-save file-location and calendar processing pattern used here mirrors the hook convention described in this library's architecture findings — several managers add `PreSaveProcessing()`/`PostSaveProcessing()` hooks called by the presentation layer around `Save()`*.
- The AJAX brief-date endpoint reads directly from `HttpContext.Current.Request`, coupling this Application-tier class to the ASP.NET web tier*.

## Constraints and usage notes
- The default-printer value captured at construction is used to support Appworx batch print submissions related to appeal correspondence; callers should ensure the principal has a valid default printer configured*.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `SAIF.Application.Claim.Legal\LegalNet\clsAppealManager.vb`
